// 使用立即函数防止  全局变量的污染，这里的var将不会影响到index.js中的全局变量
(function () {
    var path = require('path');
    const {app, Menu, BrowserWindow, Tray} = require('electron');
    //创建系统托盘
    var tray = new Tray(path.join(__dirname, '../../renderer/assets/icon.ico'));
    // 绑定一个右键菜单 
    const template = [{
            label: '设置',
            click: function () {} //打开相应页面
        },
        {
            label: '帮助',
            click: function () {}
        },
        {
            label: '关于',
            click: function () {}
        },
        {
            label: '退出',
            click: function () {
                // BrowserWindow.getFocusedWindow().webContents().send('close-main-window');
                app.quit();

            }
        }
    ];
    const menu = Menu.buildFromTemplate(template);
    // 设置鼠标在图标上面显示信息
    tray.setToolTip('舆情监控系统');
    // 设置右键菜单
    tray.setContextMenu(menu);

    // //监听关闭事件隐藏到系统托盘
    // 获取当前窗口
    var win = BrowserWindow.getFocusedWindow();
    // 添加close事件   判断窗口隐藏就退出，  窗体显示就隐藏
    win.on('close', (e) => {

        if (!win.isFocused()) {
            // 在win的时候  不能用const定义 因此常量是无法改变值的
            win = null;
        } else {
            e.preventDefault(); /*阻止应用退出*/

            win.hide(); /*隐藏当前窗口*/

        }
    })
    //监听托盘的双击事件，显示当前窗口
    tray.on('double-click', () => {
        win.show();
    })
})()